using System;
using System.ComponentModel;
using System.Collections.Generic;
using System.Xml.Serialization;


namespace ClientTools.Client.Controls.Packager.PackageClasses
{
    public class DocumentType
    {
        #region Facaded properties for Info object to get databinding in grid
        [XmlIgnore]
        public string Name
        {
            get { return _info.Name; }
            set { _info.Name = value; }
        }
        
        [XmlIgnore]
        public string Alias
        {
            get { return _info.Alias; }
            set { _info.Alias = value; }
        }
        #endregion

        private DocumentTypeInfo _info = new DocumentTypeInfo();
        public DocumentTypeInfo Info
        {
            get { return _info; }
            set { _info = value; }
        }

        private BindingList<Structure> _structure = new BindingList<Structure>();
        [XmlArrayItem("DocumentType")]
        public BindingList<Structure> Structure
        {
            get { return _structure; }
            set { _structure = value; }
        }

        private TabCollection _tabs = new TabCollection();
        public TabCollection Tabs
        {
            get { return _tabs; }
            set { _tabs = value; }
        }

        private GenericPropertyCollection _genericProperties = new GenericPropertyCollection();
        public GenericPropertyCollection GenericProperties
        {
            get { return _genericProperties; }
            set { _genericProperties = value; }
        }
    }
}
